package com.bjpowernode.dataservice.mapper;

import com.bjpowernode.api.model.ProductInfo;
import com.bjpowernode.api.vo.ProductBidInfo;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

public interface ProductInfoMapper {

    ProductInfo selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(ProductInfo record);

    /**
     * 查询年利率平均值
     *
     * @return
     */
    BigDecimal selectAvgRate();

    /**
     * 按照productType分页查询产品
     *
     * @param productType
     * @param offset
     * @param rows
     * @return
     */
    List<ProductInfo> selectPageByType(@Param("productType") Integer productType,
                                       @Param("offset") int offset,
                                       @Param("rows") Integer rows);

    /**
     * 按照type分页查询产品总数
     *
     * @param productType
     * @return
     */
    Integer selectCountOfProductByType(@Param("productType") Integer productType);

    /**
     * 扣除产品剩余可投资金额
     * @param productId
     * @param investMoney
     * @return
     */
    int updateInvest(@Param("id") Integer productId, @Param("investMoney") BigDecimal investMoney);

    /**
     * 获取满标产品
     * @param beginTime
     * @param endTime
     * @return
     */
    List<ProductInfo> selectSelledProduct(@Param("beginTime") Date beginTime, @Param("endTime") Date endTime);
}